subroutine hexene_dimer_init()
use molecule
implicit none
   !-------------------------------------------------------------------------
   natom    = 38
   neighmax = 4
   molname  = "hexene_dimer"
   !
   if ( allocated(neigh   )) deallocate( neigh   )
   if ( allocated(element )) deallocate( element )
   if ( allocated(molpos  )) deallocate( molpos  )
   if ( allocated(chg     )) deallocate( chg     )
   allocate( element(natom), neigh(neighmax, natom), molpos(3,natom), chg(natom) )
   !
   element( 1) = "CT"
   element( 2) = "HT"
   element( 3) = "HT"
   element( 4) = "HT"
   element( 5) = "CT"
   element( 6) = "HT"
   element( 7) = "HT"
   element( 8) = "CT"
   element( 9) = "HT"
   element(10) = "HT"
   element(11) = "CT"
   element(12) = "HT"
   element(13) = "HT"
   element(14) = "CT"
   element(15) = "HT"
   element(16) = "CT"
   element(17) = "HT"
   element(18) = "CT"
   element(19) = "HT"
   element(20) = "HT"
   element(21) = "CT"
   element(22) = "HT"
   element(23) = "HT"
   element(24) = "CT"
   element(25) = "HT"
   element(26) = "HT"
   element(27) = "CT"
   element(28) = "HT"
   element(29) = "HT"
   element(30) = "HT"
   element(31) = "CT"
   element(32) = "HT"
   element(33) = "HT"
   element(34) = "HT"
   element(35) = "CT"
   element(36) = "HT"
   element(37) = "HT"
   element(38) = "HT"
   !
   chg( 1) = -0.18D0
   chg( 2) =  0.06D0
   chg( 3) =  0.06D0
   chg( 4) =  0.06D0
   chg( 5) = -0.12D0
   chg( 6) =  0.06D0
   chg( 7) =  0.06D0
   chg( 8) = -0.12D0
   chg( 9) =  0.06D0
   chg(10) =  0.06D0
   chg(11) = -0.12D0
   chg(12) =  0.06D0
   chg(13) =  0.06D0
   neigh(:, 1) = (/ 2, 3, 4, 5 /)
   neigh(:, 2) = (/ 1, 0, 0, 0 /)
   neigh(:, 3) = (/ 1, 0, 0, 0 /)
   neigh(:, 4) = (/ 1, 0, 0, 0 /)
   neigh(:, 5) = (/ 1, 6, 7, 8 /)
   neigh(:, 6) = (/ 5, 0, 0, 0 /)
   neigh(:, 7) = (/ 5, 0, 0, 0 /)
   neigh(:, 8) = (/ 5, 9,10,11 /)
   neigh(:, 9) = (/ 8, 0, 0, 0 /)
   neigh(:,10) = (/ 8, 0, 0, 0 /)
   neigh(:,11) = (/ 8,12,13,14 /)
   neigh(:,12) = (/11, 0, 0, 0 /)
   neigh(:,13) = (/11, 0, 0, 0 /)
   neigh(:,14) = (/11,15,16,31 /)
   neigh(:,15) = (/14, 0, 0, 0 /)
   neigh(:,16) = (/14,17,18,35 /)
   neigh(:,17) = (/16, 0, 0, 0 /)
   neigh(:,18) = (/16,19,20,21 /)
   neigh(:,19) = (/18, 0, 0, 0 /)
   neigh(:,20) = (/18, 0, 0, 0 /)
   neigh(:,21) = (/18,22,23,24 /)
   neigh(:,22) = (/21, 0, 0, 0 /)
   neigh(:,23) = (/21, 0, 0, 0 /)
   neigh(:,24) = (/21,25,26,27 /)
   neigh(:,25) = (/24, 0, 0, 0 /)
   neigh(:,26) = (/24, 0, 0, 0 /)
   neigh(:,27) = (/24,29,29,30 /)
   neigh(:,28) = (/27, 0, 0, 0 /)
   neigh(:,29) = (/27, 0, 0, 0 /)
   neigh(:,30) = (/27, 0, 0, 0 /)
   neigh(:,31) = (/14,32,33,34 /)
   neigh(:,32) = (/31, 0, 0, 0 /)
   neigh(:,33) = (/31, 0, 0, 0 /)
   neigh(:,34) = (/31, 0, 0, 0 /)
   neigh(:,35) = (/16,36,37,38 /)
   neigh(:,36) = (/35, 0, 0, 0 /)
   neigh(:,37) = (/35, 0, 0, 0 /)
   neigh(:,38) = (/35, 0, 0, 0 /)
   !
   molpos(:, 1) = (/ -9.5596D0,  1.2736D0, 0.0799D0  /)
   molpos(:, 2) = (/-10.4145D0,  1.8734D0,-0.2654D0  /)
   molpos(:, 3) = (/ -9.6317D0,  1.1231D0, 1.1667D0  /)
   molpos(:, 4) = (/ -9.5671D0,  0.2978D0,-0.4269D0  /)
   molpos(:, 5) = (/ -8.2520D0,  2.0095D0,-0.2480D0  /)
   molpos(:, 6) = (/ -8.1762D0,  2.1601D0,-1.3345D0  /)
   molpos(:, 7) = (/ -8.2418D0,  2.9850D0, 0.2596D0  /)
   molpos(:, 8) = (/ -7.0644D0,  1.1696D0, 0.2357D0  /)
   molpos(:, 9) = (/ -7.1395D0,  1.0220D0, 1.3223D0  /)
   molpos(:,10) = (/ -7.0878D0,  0.2073D0,-0.2689D0  /)
   molpos(:,11) = (/ -5.7568D0,  1.9270D0,-0.0979D0  /)
   molpos(:,12) = (/ -5.7202D0,  2.1001D0,-1.1827D0  /)
   molpos(:,13) = (/ -5.8367D0,  2.8966D0, 0.4153D0  /)
   molpos(:,14) = (/ -4.3552D0,  1.2860D0, 0.3525D0  /)
   molpos(:,15) = (/ -4.3542D0,  1.1616D0, 1.4448D0  /)
   molpos(:,16) = (/ -3.9166D0, -0.1767D0,-0.3525D0  /)
   molpos(:,17) = (/ -3.9176D0, -0.0522D0,-1.4447D0  /)
   molpos(:,18) = (/ -2.5150D0, -0.8177D0, 0.0980D0  /)
   molpos(:,19) = (/ -2.5516D0, -0.9908D0, 1.1827D0  /)
   molpos(:,20) = (/ -2.4351D0, -1.7872D0,-0.4153D0  /)
   molpos(:,21) = (/ -1.2074D0, -0.0602D0,-0.2357D0  /)
   molpos(:,22) = (/ -1.1323D0,  0.0873D0,-1.3222D0  /)
   molpos(:,23) = (/ -1.1840D0,  0.9021D0, 0.2689D0  /)
   molpos(:,24) = (/ -0.0198D0, -0.9001D0, 0.2480D0  /)
   molpos(:,25) = (/ -0.0956D0, -1.0507D0, 1.3346D0  /)
   molpos(:,26) = (/ -0.0300D0, -1.8756D0,-0.2595D0  /)
   molpos(:,27) = (/  1.2878D0, -0.1642D0,-0.0799D0  /)
   molpos(:,28) = (/  2.1427D0, -0.7640D0, 0.2654D0  /)
   molpos(:,29) = (/  1.2953D0,  0.8115D0, 0.4269D0  /)
   molpos(:,30) = (/  1.3599D0, -0.0138D0,-1.1667D0  /)
   molpos(:,31) = (/ -3.4111D0,  2.4514D0,-0.0365D0  /)
   molpos(:,32) = (/ -2.3959D0,  2.2441D0, 0.2666D0  /)
   molpos(:,33) = (/ -3.7488D0,  3.3673D0, 0.4703D0  /)
   molpos(:,34) = (/ -3.4494D0,  2.6027D0,-1.1248D0  /)
   molpos(:,35) = (/ -4.8607D0, -1.3420D0, 0.0366D0  /)
   molpos(:,36) = (/ -5.8759D0, -1.1347D0,-0.2666D0  /)
   molpos(:,37) = (/ -4.8224D0, -1.4934D0, 1.1248D0  /)
   molpos(:,38) = (/ -4.5230D0, -2.2579D0,-0.4703D0  /)
   !-------------------------------------------------------------------------
end subroutine
